Revert commit dropping installed tests
authorJeremy Bicha <jeremy.bicha@canonical.com>
Thu, 12 Jan 2023 13:48:34 +0000 (08:48 -0500)
committerSimon McVittie <smcv@debian.org>
Thu, 9 Feb 2023 09:36:30 +0000 (09:36 +0000)
(cherry picked from commit cea3aeee931b0f9d4bda11f766032850e6a3889c)

debian/patches/Revert-build-Drop-the-install-tests-option.patch [new file with mode: 0644]
debian/patches/series

diff --git a/debian/patches/Revert-build-Drop-the-install-tests-option.patch b/debian/patches/Revert-build-Drop-the-install-tests-option.patch
new file mode 100644 (file)
index 0000000..23ad638
--- /dev/null
@@ -0,0 +1,707 @@
+From: Jeremy Bicha <jeremy.bicha@canonical.com>
+Date: Thu, 12 Jan 2023 08:47:54 -0500
+Subject: Revert "build: Drop the install-tests option"
+
+Debian and Ubuntu uses these installed tests as part of their
+autopkgtest system
+
+This reverts commit 3121f88265ac61733e257f5335473d6f139f158c.
+---
+ docs/reference/gtk/building.md   |  2 +-
+ meson.build                      |  1 +
+ meson_options.txt                |  5 +++
+ testsuite/a11y/meson.build       |  8 +++--
+ testsuite/css/change/meson.build | 30 ++++++++++++++--
+ testsuite/css/meson.build        | 36 +++++++++++++++----
+ testsuite/css/nodes/meson.build  | 76 +++++++++++++++++++++++++++++++++++++---
+ testsuite/css/parser/meson.build | 25 ++++++++++---
+ testsuite/css/style/meson.build  | 58 ++++++++++++++++++++++++++++--
+ testsuite/gdk/meson.build        | 46 +++++++++++++++++++-----
+ testsuite/gsk/meson.build        | 25 +++++++++----
+ testsuite/gtk/meson.build        | 50 ++++++++++++++++++++++++--
+ testsuite/tools/meson.build      | 36 ++++++++++++++++---
+ 13 files changed, 354 insertions(+), 44 deletions(-)
+
+diff --git a/docs/reference/gtk/building.md b/docs/reference/gtk/building.md
+index 2be7da9..31073d1 100644
+--- a/docs/reference/gtk/building.md
++++ b/docs/reference/gtk/building.md
+@@ -294,7 +294,7 @@ is mainly useful for shortening turnaround times on developer
+ systems. Installed builds of GTK should always have introspection
+ support.
+-### `build-tests`, `demos`
++### `build-tests`, `install-tests`, `demos`
+ By default, GTK will build quite a few tests and demos.
+ While these are useful on a developer system, they are not
+diff --git a/meson.build b/meson.build
+index b7419c6..80304b0 100644
+--- a/meson.build
++++ b/meson.build
+@@ -885,6 +885,7 @@ summary('Introspection', build_gir, section: 'Build')
+ summary('Documentation', get_option('gtk_doc'), section: 'Build')
+ summary('Man pages', get_option('man-pages'), section: 'Build')
+ summary('Tests', get_option('build-tests'), section: 'Build')
++summary('Install tests', get_option('install-tests'), section: 'Build')
+ summary('Demos', get_option('demos'), section: 'Build')
+ summary('Examples', get_option('build-examples'), section: 'Build')
+diff --git a/meson_options.txt b/meson_options.txt
+index 18f6c13..c1df747 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -123,3 +123,8 @@ option('build-tests',
+        type: 'boolean',
+        value: true,
+        description : 'Build tests')
++
++option('install-tests',
++       type: 'boolean',
++       value: false,
++       description : 'Install tests')
+diff --git a/testsuite/a11y/meson.build b/testsuite/a11y/meson.build
+index c43465e..4547b21 100644
+--- a/testsuite/a11y/meson.build
++++ b/testsuite/a11y/meson.build
+@@ -1,3 +1,6 @@
++testexecdir = join_paths(installed_test_bindir, 'gtk')
++testdatadir = join_paths(installed_test_datadir, 'gtk')
++
+ # Available keys for each test:
+ #
+ #  - 'name': the test name; used for the test and to determine the base
+@@ -61,11 +64,12 @@ foreach t : tests
+   test_extra_suites = t.get('suites', [])
+   test_timeout = 60
+-  test_exe = executable(test_name,
+-    sources: test_srcs,
++  test_exe = executable(test_name, test_srcs,
+     c_args: test_cargs + test_extra_cargs,
+     link_args: test_extra_ldflags,
+     dependencies: libgtk_dep,
++    install: get_option('install-tests'),
++    install_dir: testexecdir,
+   )
+   if test_extra_suites.contains('slow')
+diff --git a/testsuite/css/change/meson.build b/testsuite/css/change/meson.build
+index a75b530..9409f48 100644
+--- a/testsuite/css/change/meson.build
++++ b/testsuite/css/change/meson.build
+@@ -7,10 +7,17 @@ changetest_env.set('GIO_USE_VFS', 'local')
+ changetest_env.set('GSETTINGS_BACKEND', 'memory')
+ changetest_env.set('G_ENABLE_DIAGNOSTIC', '0')
+-test_change = executable('test-css-change',
+-  sources: ['test-css-change.c', '../../testutils.c'],
++testexecdir = join_paths(installed_test_bindir, 'css', 'change')
++testdatadir = join_paths(installed_test_datadir, 'css')
++
++test_change = executable(
++  'test-css-change',
++  'test-css-change.c',
++  '../../testutils.c',
+   c_args: common_cflags,
+   dependencies: libgtk_dep,
++  install: get_option('install-tests'),
++  install_dir: testexecdir,
+ )
+ test('change', test_change,
+@@ -19,3 +26,22 @@ test('change', test_change,
+   env: changetest_env,
+   suite: 'css',
+ )
++
++test_data = [
++  'test1.css', 'test1.ui', 'test1.nodes',
++  'test2.css', 'test2.ui', 'test2.nodes',
++  'test3.css', 'test3.ui', 'test3.nodes',
++  'test4.css', 'test4.ui', 'test4.nodes',
++]
++
++if get_option('install-tests')
++  conf = configuration_data()
++  conf.set('libexecdir', gtk_libexecdir)
++  configure_file(input: 'change.test.in',
++                 output: 'change.test',
++                 configuration: conf,
++                 install_dir: testdatadir)
++
++  install_data(test_data, install_dir: testexecdir)
++
++endif
+diff --git a/testsuite/css/meson.build b/testsuite/css/meson.build
+index 24084d6..20c0314 100644
+--- a/testsuite/css/meson.build
++++ b/testsuite/css/meson.build
+@@ -13,10 +13,14 @@ subdir('nodes')
+ subdir('style')
+ subdir('change')
+-test_api = executable('api',
+-  sources: ['api.c'],
++testexecdir = join_paths(installed_test_bindir, 'css')
++testdatadir = join_paths(installed_test_datadir, 'css')
++
++test_api = executable('api', 'api.c',
+   c_args: common_cflags,
+   dependencies: libgtk_dep,
++  install: get_option('install-tests'),
++  install_dir: testexecdir,
+ )
+ test('api', test_api,
+@@ -26,11 +30,12 @@ test('api', test_api,
+   suite: 'css',
+ )
+-test_data = executable('data',
+-  sources: ['data.c'],
++test_data = executable('data', 'data.c',
+   c_args: common_cflags,
+   include_directories: [confinc, ],
+   dependencies: libgtk_static_dep,
++  install: get_option('install-tests'),
++  install_dir: testexecdir,
+ )
+ test('data', test_data,
+@@ -40,10 +45,11 @@ test('data', test_data,
+   suite: 'css',
+ )
+-transition = executable('transition',
+-  sources: ['transition.c'],
++transition = executable('transition', 'transition.c',
+   c_args: common_cflags,
+   dependencies: libgtk_static_dep,
++  install: get_option('install-tests'),
++  install_dir: testexecdir,
+ )
+ test('transition', transition,
+@@ -53,6 +59,24 @@ test('transition', transition,
+      suite: 'css'
+ )
++if get_option('install-tests')
++  conf = configuration_data()
++  conf.set('libexecdir', gtk_libexecdir)
++  configure_file(input: 'api.test.in',
++    output: 'api.test',
++    configuration: conf,
++    install_dir: testdatadir,
++  )
++
++  conf = configuration_data()
++  conf.set('libexecdir', gtk_libexecdir)
++  configure_file(input: 'data.test.in',
++    output: 'data.test',
++    configuration: conf,
++    install_dir: testdatadir,
++  )
++endif
++
+ if false and get_option ('profiler')
+   adwaita_env = csstest_env
+diff --git a/testsuite/css/nodes/meson.build b/testsuite/css/nodes/meson.build
+index 576b4d8..eb619cf 100644
+--- a/testsuite/css/nodes/meson.build
++++ b/testsuite/css/nodes/meson.build
+@@ -7,15 +7,81 @@ nodetest_env.set('GIO_USE_VFS', 'local')
+ nodetest_env.set('GSETTINGS_BACKEND', 'memory')
+ nodetest_env.set('G_ENABLE_DIAGNOSTIC', '0')
+-test_nodes = executable('test-css-nodes',
+-  sources: ['test-css-nodes.c', '../../testutils.c'],
+-  c_args: common_cflags,
+-  dependencies: libgtk_dep,
+-)
++testexecdir = join_paths(installed_test_bindir, 'css', 'nodes')
++testdatadir = join_paths(installed_test_datadir, 'css')
++test_nodes = executable('test-css-nodes', 'test-css-nodes.c', '../../testutils.c',
++                        c_args: common_cflags,
++                        install: get_option('install-tests'),
++                        install_dir: testexecdir,
++                        dependencies: libgtk_dep)
+ test('nodes', test_nodes,
+   args: [ '--tap', '-k' ],
+   protocol: 'tap',
+   env: nodetest_env,
+   suite: 'css',
+ )
++
++test_data = [
++  'box.ltr.nodes',
++  'box.ltr.ui',
++  'box.rtl.nodes',
++  'box.rtl.ui',
++  'buttons.nodes',
++  'buttons.ui',
++  'checkbutton.ltr.nodes',
++  'checkbutton.ltr.ui',
++  'checkbutton.rtl.nodes',
++  'checkbutton.rtl.ui',
++  'combobox.nodes',
++  'combobox.ui',
++  'entries.nodes',
++  'entries.ui',
++  'expander.ltr.nodes',
++  'expander.ltr.ui',
++  'expander.rtl.nodes',
++  'expander.rtl.ui',
++  'levelbar.ltr.nodes',
++  'levelbar.ltr.ui',
++  'levelbar.rtl.nodes',
++  'levelbar.rtl.ui',
++  'notebook-arrows2.nodes',
++  'notebook-arrows2.ui',
++  'notebook-arrows.nodes',
++  'notebook-arrows.ui',
++  'notebook.bottom.ltr.nodes',
++  'notebook.bottom.ltr.ui',
++  'notebook.bottom.rtl.nodes',
++  'notebook.bottom.rtl.ui',
++  'notebook.left.ltr.nodes',
++  'notebook.left.ltr.ui',
++  'notebook.left.rtl.nodes',
++  'notebook.left.rtl.ui',
++  'notebook.right.ltr.nodes',
++  'notebook.right.ltr.ui',
++  'notebook.right.rtl.nodes',
++  'notebook.right.rtl.ui',
++  'notebook.top.ltr.nodes',
++  'notebook.top.ltr.ui',
++  'notebook.top.rtl.nodes',
++  'notebook.top.rtl.ui',
++  'paned.ltr.nodes',
++  'paned.ltr.ui',
++  'paned.rtl.nodes',
++  'paned.rtl.ui',
++  'progressbar.nodes',
++  'progressbar.ui',
++  'scale.nodes',
++  'scale.ui',
++]
++
++if get_option('install-tests')
++  conf = configuration_data()
++  conf.set('libexecdir', gtk_libexecdir)
++  configure_file(input: 'nodes.test.in',
++                 output: 'nodes.test',
++                 configuration: conf,
++                 install_dir: testdatadir)
++
++  install_data(test_data, install_dir: testexecdir)
++endif
+diff --git a/testsuite/css/parser/meson.build b/testsuite/css/parser/meson.build
+index b419c29..d0fdd0d 100644
+--- a/testsuite/css/parser/meson.build
++++ b/testsuite/css/parser/meson.build
+@@ -1,8 +1,11 @@
+-test_parser = executable('test-css-parser',
+-  sources: ['test-css-parser.c', '../../testutils.c'],
+-  c_args: common_cflags,
+-  dependencies: libgtk_dep,
+-)
++testexecdir = join_paths(installed_test_bindir, 'css', 'parser')
++testdatadir = join_paths(installed_test_datadir, 'css')
++
++test_parser = executable('test-css-parser', 'test-css-parser.c', '../../testutils.c',
++                         c_args: common_cflags,
++                         install: get_option('install-tests'),
++                         install_dir: testexecdir,
++                         dependencies: libgtk_dep)
+ test_data = [
+   'animation-crash-3.12.css',
+@@ -534,3 +537,15 @@ foreach testname : test_data
+          suite: 'css')
+   endif
+ endforeach
++
++if get_option('install-tests')
++  conf = configuration_data()
++  conf.set('libexecdir', gtk_libexecdir)
++  configure_file(input: 'parser.test.in',
++                 output: 'parser.test',
++                 configuration: conf,
++                 install_dir: testdatadir)
++
++  install_data(test_data, install_dir: testexecdir)
++
++endif
+diff --git a/testsuite/css/style/meson.build b/testsuite/css/style/meson.build
+index ef703d7..3228049 100644
+--- a/testsuite/css/style/meson.build
++++ b/testsuite/css/style/meson.build
+@@ -7,21 +7,73 @@ styletest_env.set('GIO_USE_VFS', 'local')
+ styletest_env.set('GSETTINGS_BACKEND', 'memory')
+ styletest_env.set('G_ENABLE_DIAGNOSTIC', '0')
++testexecdir = join_paths(installed_test_bindir, 'css', 'style')
++testdatadir = join_paths(installed_test_datadir, 'css')
++
+ cssresources = gnome.compile_resources(
+   'cssresources',
+   'test-css-style.gresource.xml',
+   source_dir: '.',
+ )
+-test_style = executable('test-css-style',
+-  sources: ['test-css-style.c', '../../testutils.c', cssresources],
++test_style = executable(
++  'test-css-style',
++  'test-css-style.c',
++  '../../testutils.c',
++  cssresources,
+   c_args: common_cflags,
+   dependencies: libgtk_dep,
++  install: get_option('install-tests'),
++  install_dir: testexecdir,
+ )
+-
+ test('style', test_style,
+   args: [ '--tap', '-k' ],
+   protocol: 'tap',
+   env: styletest_env,
+   suite: 'css',
+ )
++
++test_data = [
++  'adjacent-states.css',
++  'adjacent-states.nodes',
++  'adjacent-states.ui',
++  'bloomfilter-not.css',
++  'bloomfilter-not.nodes',
++  'bloomfilter-not.ui',
++  'colornames.css',
++  'colornames.nodes',
++  'colornames.ui',
++  'currentcolor.css',
++  'currentcolor.nodes',
++  'currentcolor.ui',
++  'font.css',
++  'font.nodes',
++  'font.ui',
++  'gradient.css',
++  'gradient.nodes',
++  'gradient.ui',
++  'gtk.css',
++  'inherit.css',
++  'inherit.nodes',
++  'inherit.ui',
++  'label.css',
++  'label.nodes',
++  'label.ui',
++  'misc.css',
++  'misc.nodes',
++  'misc.ui',
++  'nth-child.css',
++  'nth-child.nodes',
++  'nth-child.ui',
++]
++
++if get_option('install-tests')
++  conf = configuration_data()
++  conf.set('libexecdir', gtk_libexecdir)
++  configure_file(input: 'style.test.in',
++                 output: 'style.test',
++                 configuration: conf,
++                 install_dir: testdatadir)
++
++  install_data(test_data, install_dir: testexecdir)
++endif
+diff --git a/testsuite/gdk/meson.build b/testsuite/gdk/meson.build
+index cd36ba0..45c4744 100644
+--- a/testsuite/gdk/meson.build
++++ b/testsuite/gdk/meson.build
+@@ -1,10 +1,13 @@
++testexecdir = join_paths(installed_test_bindir, 'gdk')
++testdatadir = join_paths(installed_test_datadir, 'gdk')
++
+ clipboard_client = executable('clipboard-client',
+-  sources: ['clipboard-client.c'],
+-  include_directories: [confinc],
+-  c_args: common_cflags,
+-  dependencies: [ libgtk_dep ],
+-  install: false,
+-)
++                              sources: ['clipboard-client.c'],
++                              include_directories: [confinc],
++                              c_args: common_cflags,
++                              dependencies: [ libgtk_dep ],
++                              install: get_option('install-tests'),
++                              install_dir: testexecdir)
+ tests = [
+   { 'name': 'array' },
+@@ -34,7 +37,8 @@ foreach t : tests
+     sources: '@0@.c'.format(test_name),
+     c_args: common_cflags,
+     dependencies: libgtk_dep,
+-    install: false,
++    install: get_option('install-tests'),
++    install_dir: testexecdir,
+   )
+   suites = ['gdk'] + t.get('suites', [])
+@@ -61,7 +65,8 @@ foreach t : internal_tests
+   test_exe = executable(t, '@0@.c'.format(t),
+     c_args: common_cflags,
+     dependencies: libgtk_static_dep,
+-    install: false,
++    install: get_option('install-tests'),
++    install_dir: testexecdir,
+   )
+   test(t, test_exe,
+@@ -75,3 +80,28 @@ foreach t : internal_tests
+     suite: 'gdk',
+   )
+ endforeach
++
++
++if get_option('install-tests')
++  foreach t : tests
++    test_name = t.get('name')
++    suites = t.get('suites', [])
++
++    if suites.contains('flaky') or suites.contains('failing')
++      continue
++    endif
++
++    test_cdata = configuration_data()
++    test_cdata.set('testexecdir', testexecdir)
++    test_cdata.set('test', test_name)
++    configure_file(input: 'gdk.test.in',
++      output: '@0@.test'.format(test_name),
++      configuration: test_cdata,
++      install: true,
++      install_dir: testdatadir,
++    )
++  endforeach
++
++  install_subdir('clipboard-data', install_dir: testexecdir)
++  install_subdir('image-data', install_dir: testexecdir)
++endif
+diff --git a/testsuite/gsk/meson.build b/testsuite/gsk/meson.build
+index 1897562..67514eb 100644
+--- a/testsuite/gsk/meson.build
++++ b/testsuite/gsk/meson.build
+@@ -1,12 +1,22 @@
+-compare_render = executable('compare-render',
++testexecdir = join_paths(installed_test_bindir, 'gsk')
++testdatadir = join_paths(installed_test_datadir, 'gsk')
++
++compare_render = executable(
++  'compare-render',
+   ['compare-render.c', '../reftests/reftest-compare.c'],
+   dependencies: libgtk_dep,
+   c_args: common_cflags,
++  install: get_option('install-tests'),
++  install_dir: testexecdir
+ )
+-node_parser = executable('node-parser', 'node-parser.c',
++node_parser = executable(
++  'node-parser',
++  ['node-parser.c'],
+   dependencies: libgtk_dep,
+   c_args: common_cflags,
++  install: get_option('install-tests'),
++  install_dir: testexecdir
+ )
+ compare_render_tests = [
+@@ -256,9 +266,11 @@ foreach t : tests
+   test_extra_ldflags = t.get(3, [])
+   test_exe = executable(test_name, test_srcs,
+-    dependencies : libgtk_dep,
+     c_args : test_cargs + test_extra_cargs + common_cflags,
+     link_args : test_extra_ldflags,
++    dependencies : libgtk_dep,
++    install: get_option('install-tests'),
++    install_dir: testexecdir,
+   )
+   test(test_name, test_exe,
+@@ -287,11 +299,12 @@ foreach t : internal_tests
+   test_extra_cargs = t.get(2, [])
+   test_extra_ldflags = t.get(3, [])
+-  test_exe = executable(test_name,
+-    sources: test_srcs,
+-    dependencies : libgtk_static_dep,
++  test_exe = executable(test_name, test_srcs,
+     c_args : test_cargs + test_extra_cargs + common_cflags,
+     link_args : test_extra_ldflags,
++    dependencies : libgtk_static_dep,
++    install: get_option('install-tests'),
++    install_dir: testexecdir,
+   )
+   test(test_name, test_exe,
+diff --git a/testsuite/gtk/meson.build b/testsuite/gtk/meson.build
+index 73dd136..3c107ef 100644
+--- a/testsuite/gtk/meson.build
++++ b/testsuite/gtk/meson.build
+@@ -1,3 +1,6 @@
++testexecdir = join_paths(installed_test_bindir, 'gtk')
++testdatadir = join_paths(installed_test_datadir, 'gtk')
++
+ gtk_tests_export_dynamic_ldflag = []
+ if cc.get_id() != 'msvc'
+@@ -169,6 +172,8 @@ foreach t : tests
+     c_args: test_cargs + test_extra_cargs,
+     link_args: test_extra_ldflags,
+     dependencies: libgtk_dep,
++    install: get_option('install-tests'),
++    install_dir: testexecdir,
+   )
+   if test_extra_suites.contains('slow')
+@@ -197,6 +202,8 @@ foreach t : internal_tests
+     c_args: test_cargs + test_extra_cargs,
+     link_args: test_extra_ldflags,
+     dependencies: libgtk_static_dep,
++    install: get_option('install-tests'),
++    install_dir: testexecdir,
+   )
+   if test_extra_suites.contains('slow')
+@@ -215,8 +222,10 @@ endforeach
+ # FIXME: if objc autotestkeywords_CPPFLAGS += -DHAVE_OBJC=1 -x objective-c++
+ if add_languages('cpp', required: false, native: false)
+   test_exe = executable('autotestkeywords',
+-    sources: ['autotestkeywords.cc'],
++    sources: 'autotestkeywords.cc',
+     dependencies: libgtk_dep,
++    install: get_option('install-tests'),
++    install_dir: testexecdir,
+   )
+   test('c++ keywords', test_exe,
+     args: [ '--tap', '-k' ],
+@@ -224,6 +233,16 @@ if add_languages('cpp', required: false, native: false)
+     env: test_env,
+     suite: 'gtk',
+   )
++  if get_option('install-tests')
++    conf = configuration_data()
++    conf.set('testexecdir', testexecdir)
++    conf.set('test', 'autotestkeywords')
++    configure_file(input: 'gtk.test.in',
++      output: 'autotestkeywords.test',
++      configuration: conf,
++      install_dir: testdatadir,
++    )
++  endif
+ endif
+@@ -249,10 +268,13 @@ focus_chain_tests = [
+   #[ 'widget-factory3', 'tab-backward' ],
+ ]
+-focus_chain = executable('test-focus-chain',
++focus_chain = executable(
++  'test-focus-chain',
+   sources: ['test-focus-chain.c', '../testutils.c'],
+   dependencies: libgtk_dep,
+   c_args: common_cflags,
++  install: get_option('install-tests'),
++  install_dir: testexecdir
+ )
+ foreach test : focus_chain_tests
+@@ -274,6 +296,30 @@ test('potfiles', make_pot,
+      workdir: meson.project_source_root(),
+      suite: ['gtk', 'translations' ])
++if get_option('install-tests')
++  foreach t : tests
++    test_name = t.get('name')
++    suites = t.get('suites', [])
++
++    if suites.contains('flaky') or suites.contains('failing')
++      continue
++    endif
++
++    conf = configuration_data()
++    conf.set('testexecdir', testexecdir)
++    conf.set('test', test_name)
++    configure_file(input: 'gtk.test.in',
++      output: '@0@.test'.format(test_name),
++      configuration: conf,
++      install_dir: testdatadir,
++    )
++  endforeach
++
++  install_subdir('icons', install_dir: testexecdir)
++  install_subdir('icons2', install_dir: testexecdir)
++  install_subdir('ui', install_dir: testexecdir)
++endif
++
+ if false and get_option ('profiler')
+   performance_env = test_env
+diff --git a/testsuite/tools/meson.build b/testsuite/tools/meson.build
+index 986c2d6..582bce6 100644
+--- a/testsuite/tools/meson.build
++++ b/testsuite/tools/meson.build
+@@ -1,12 +1,23 @@
++testexecdir = join_paths(installed_test_bindir, 'tools')
++testdatadir = join_paths(installed_test_datadir, 'tools')
++
+ bash = find_program('bash', required : false)
+ if bash.found()
+   test_env = environment()
+   foreach t : ['simplify', 'simplify-3to4', 'validate', 'settings']
+-    configure_file(output: t,
+-      input: '@0@.in'.format(t),
+-      copy: true,
+-    )
++    if get_option('install-tests')
++      configure_file(output: t,
++        input: '@0@.in'.format(t),
++        copy: true,
++        install_dir: testexecdir,
++      )
++    else
++      configure_file(output: t,
++        input: '@0@.in'.format(t),
++        copy: true,
++      )
++    endif
+     test(t, bash,
+       args: t,
+       workdir: meson.current_build_dir(),
+@@ -23,3 +34,20 @@ if bash.found()
+     )
+   endforeach
+ endif
++
++if get_option('install-tests')
++  foreach t : ['simplify', 'settings']
++    test_conf = configuration_data()
++    test_conf.set('testexecdir', testexecdir)
++    test_conf.set('test', t)
++    configure_file(output: '@0@.test'.format(t),
++      input: 'tools.test.in',
++      configuration: test_conf,
++      install_dir: testdatadir,
++    )
++  endforeach
++
++  install_subdir('simplify-data', install_dir: testexecdir)
++  install_subdir('simplify-data-3to4', install_dir: testexecdir)
++  install_subdir('validate-data', install_dir: testexecdir)
++endif
index deae500c088aff8174ef0307648b93bee656cc9d..a6870d4524064d034c7df1e187b0eacc52718225 100644 (file)
@@ -1,3 +1,4 @@
+Revert-build-Drop-the-install-tests-option.patch
 debian/reftest_compare_surfaces-Report-how-much-the-images-diffe.patch
 debian/reftests-Allow-minor-differences-to-be-tolerated.patch
 debian/Disable-inscription-markup.ui-reftest.patch